import {computed, onActivated, watch} from 'vue';
// export function wrongTr{
    onActivated(()=>{
        this.handlerTableStyle();
    })
    let tables = computed(()=>{
        if(this.$refs.multipleTable){
            return this.$refs.multipleTable.$el;
        }else if(this.$refs.table1){
            return this.$refs.table1.$el;
        }else if(this.$refs.table3){
            return this.$refs.table3.$el;
        }else if(this.$refs.table4){
            return this.$refs.table4.$el;
        }else if(this.$refs.table5){
            return this.$refs.table5.$el;
        }
    })
    let fixHeight = computed(()=>{
        if(tables){
            return tables.clientHeight;
        }else{
            return 0;
        }
    })
    let refreshTable = computed(()=>{
        if(this.$refs.multipleTable){
            return this.$refs.multipleTable;
        }else if(this.$refs.table1){
            return this.$refs.table1;
        }else if(this.$refs.table3){
            return this.$refs.table3;
        }else if(this.$refs.table4){
            return this.$refs.table4;
        }else if(this.$refs.table5){
            return this.$refs.table5;
        }
    })
    /**
     * 解决el-table固定列错行样式问题
     */
    let handlerTableStyle=()=>{
        let _this = this;

        // 在数据更新后执行
        _this.$nextTick(() => {
            // multipleTable是表格的ref属性值
            if (_this.refreshTable) {
                _this.refreshTable.doLayout();
            }
        })
        // let tables = this.tables;
        // if(!tables){return false;}
        // //固定列
        // let fixedColumn =this.tables.querySelector('.el-table__fixed');
        // //指定右固定
        // let fixedRightScroll = this.tables.querySelector('.el-table__fixed-right-patch');
        // if(!fixedColumn){
        //     fixedColumn = this.tables.querySelector('.el-table__fixed-right');
        // }
        // let fixedBody = this.tables.querySelector('.el-table__fixed-body-wrapper');
        // let fixedHeader = this.tables.querySelector('.el-table__fixed-header-wrapper');
        // if(fixedColumn && fixedBody && fixedHeader){
        //     if(fixedColumn.clientHeight >= (fixedBody.clientHeight + fixedHeader.clientHeight - 10) && fixedColumn.clientHeight >= (fixedBody.clientHeight + fixedHeader.clientHeight - 10)){//处理错位
        //         tables.style.height =tables.clientHeight +(fixedColumn.clientHeight - (fixedBody.clientHeight + fixedHeader.clientHeight)) + 'px';
        //         //表格高度变大了，固定列的高度也要变，否则会变短
        //         if(this.fixHeight != tables.clientHeight){
        //             fixedColumn.style.height = (fixedBody.clientHeight + fixedHeader.clientHeight) +0.5+'px';  
        //         }else{//表格高度没变的情况下，
        //             fixedColumn.style.height = (fixedBody.clientHeight + fixedHeader.clientHeight) +'px';  
        //         }         
        //         setTimeout(() => {
        //             if(!this.tables.querySelector('.el-table__fixed-body-wrapper')) return false;
        //             this.tables.querySelector('.el-table__fixed-body-wrapper').style.top = fixedHeader.clientHeight +'px';
        //             //右固定滚动条处自动有一个高度   
        //             if(fixedRightScroll){
        //                 fixedRightScroll.style.height="0px";
        //             }
        //         }, 100)          
        //         fixedBody.style.height = (fixedBody.offsetHeight)+'px'; 
        //         // console.log('1',1)
        //     }else{
        //         tables.style.height =this.tableHeight;                   
        //         setTimeout(() => {
        //             if(!this.tables.querySelector('.el-table__fixed-body-wrapper')) return false;
        //             this.tables.querySelector('.el-table__fixed-body-wrapper').style.top = fixedHeader.offsetHeight +'px';
        //             fixedBody.style.height = (fixedBody.offsetHeight + 11) + 'px';   
        //             fixedColumn.style.height = (fixedColumn.offsetHeight + 20)+ 'px'; 
        //             //右固定滚动条处自动有一个高度   
        //             if(fixedRightScroll){
        //                 fixedRightScroll.style.height="0px";
        //             }
        //         }, 100)
        //         // console.log('2',2)
        //     }
        //     fixedBody.style.height =  fixedBody.style.height+2+'px';
        // }
    };
    watch(dataList,(newVal,oldVal)=>{//第一个参数是监听的值，第二个是个函数
        handlerTableStyle();
    },{deep: true});
    watch(dataList.items,(newVal,oldVal)=>{//第一个参数是监听的值，第二个是个函数
        handlerTableStyle();
    },{deep: true});
    watch(publicData,(newVal,oldVal)=>{//第一个参数是监听的值，第二个是个函数
        handlerTableStyle();
    },{deep: true});
// }